﻿//using Hospital.IRepository;
//using Hospital.Model;
//using SqlSugar;
//using System.Linq.Expressions;

//namespace Hospital.Repository
//{
//    public class BlogNewRepository : BaseRepository<BlogNews>, IBlogNewRepository
//    {
//        public BlogNewRepository(ISqlSugarClient context) : base(context)
//        {

//        }
//        public async override Task<List<BlogNews>> QueryAsync()
//        {
//            return await base.Context.Queryable<BlogNews>()
//                //参数1 子表 ，参数2 外键1 ，参数3 外键2
//                .Mapper(c => c.TypeInfo, c => c.TypeId, c => c.TypeInfo.Id)
//                .Mapper(c => c.UserInfo, c => c.AuthorId, c => c.UserInfo.Id)
//                .ToListAsync();
//        }
//        public async override Task<List<BlogNews>> QueryAsync(Expression<Func<BlogNews, bool>> func)
//        {
//            return await base.Context.Queryable<BlogNews>()
//                //参数1 子表 ，参数2 外键1 ，参数3 外键2
//                .Where(func)
//                .Mapper(c => c.TypeInfo, c => c.TypeId, c => c.TypeInfo.Id)
//                .Mapper(c => c.UserInfo, c => c.AuthorId, c => c.UserInfo.Id)
//                .ToListAsync();
//        }
//        public override async Task<List<BlogNews>> QueryAsync(int page, int size, RefAsync<int> total)
//        {
//            return await base.Context.Queryable<BlogNews>()
//                .Mapper(c => c.TypeInfo, c => c.TypeId, c => c.TypeInfo.Id)
//                .Mapper(c => c.UserInfo, c => c.AuthorId, c => c.UserInfo.Id)
//                .ToPageListAsync(page, size, total);
//        }
//        public override async Task<List<BlogNews>> QueryAsync(Expression<Func<BlogNews, bool>> func, int page, int size, RefAsync<int> total)
//        {
//            return await base.Context.Queryable<BlogNews>()
//                .Where(func)
//                .Mapper(c => c.TypeInfo, c => c.TypeId, c => c.TypeInfo.Id)
//                .Mapper(c => c.UserInfo, c => c.AuthorId, c => c.UserInfo.Id)
//                 .ToPageListAsync(page, size, total);
//        }
//    }
//}
